Skip to content

[Feature/satellite] styling visibility - other updates#877

Open
MichaelWheeley wants to merge 15 commits intoaccius:Stagingfrom
MichaelWheeley:feature/sat_predict_dev
Open

[Feature/satellite] styling visibility - other updates#877
MichaelWheeley wants to merge 15 commits intoaccius:Stagingfrom
MichaelWheeley:feature/sat_predict_dev

Conversation

@MichaelWheeley
Copy link
Copy Markdown
Contributor

@MichaelWheeley MichaelWheeley commented Apr 4, 2026

What does this PR do?

  • introduces station altitude and minimum elevation boxes in the satellite settings. Altitude used in calculations. Minimum elevation used rather than zero degrees to determine visibility of satellite
  • changes satellite details to highlight sections satellite location, tracking/visibility, satellite miscellaneous
  • highlights tracking details when satellite is visible

reference #855

(miscellaneous tle1, tle2 passed - will use them in next iteration)

Type of change

  • Bug fix
  • New feature
  • Performance improvement
  • Refactor / code cleanup
  • Documentation
  • Translation
  • Map layer plugin

How to test

Checklist

  • App loads without console errors
  • Tested in Dark, Light, and Retro themes
  • Responsive at different screen sizes (desktop + mobile)
  • If touching server.js: caches have TTLs and size caps (we serve 2,000+ concurrent users)
  • If adding an API route: includes caching and error handling
  • If adding a panel: wired into Modern, Classic, and Dockable layouts
  • No hardcoded colors — uses CSS variables (var(--accent-cyan), etc.)
  • No .bak, .old, console.log debug lines, or test scripts included

Screenshots (if visual change)

station altitude and minimum elevation boxes
image

not visible
image

satellite above 0deg but below minimum threshold to be considered visible (I have it set to 5.1deg)
image

satellite visible, elevation shown as 5deg however internally it is greater than or equal to 5.1deg. Tried it but displaying decimal degrees here doesn't look good. I could have made the minimum elevation setting an integer but was happy with this arrangement.
image

Copy link
Copy Markdown
Owner

@accius accius left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice feature — station altitude and min elevation are solid additions for sat tracking. A few things to address before merge:

Must fix

Broken HTML in satellite card — The 3 inner <table> elements are nested directly inside the outer <table> without proper <tr><td> wrapping. This is invalid HTML and will render inconsistently across browsers. Either close the outer table before starting the sections, or wrap each inner table in <tr><td colspan="2">.

Duplicate style attribute on position table:

<table style="background-color: #302115; width:100%; font-size:11px; style="color: #888; padding:2px 0;"">

Second style= is ignored — the color: #888 never applies.

valueAsNumber with ??e.target.valueAsNumber returns NaN when empty, not null/undefined, so ?? 100 won't catch it. NaN will propagate to the saved config. Use || 100 or an explicit isNaN check instead.

Hardcoded background colors (#302115, #233b46, #00f800, #252e17) — these will look wrong in Light and Retro themes. Should use CSS variables or at least rgba() with low opacity over the existing background.

Should fix

minElev default mismatchSettingsPanel defaults to 5.0 but useSatelliteLayer.js uses config?.satellite?.minElev || 0. A user who hasn't opened settings will see different visibility behavior between the layer and the hook.

Negative min elevation allowed — The input allows -89 which would mark a satellite as "visible" when below the horizon. Should probably clamp to 0–89.

Nit

Squash the merge commits on merge — 13 commits (4 are merge syncs) is noisy for the history.

color changes
replace ?? with || incase of NaN
minElev default consistency to 5.0
restrict minElev to -5 to 89
@MichaelWheeley
Copy link
Copy Markdown
Contributor Author

MichaelWheeley commented Apr 5, 2026

Must fix

Broken HTML in satellite card — The 3 inner <table> elements are nested directly inside the outer <table> without proper <tr><td> wrapping. This is invalid HTML and will render inconsistently across browsers. Either close the outer table before starting the sections, or wrap each inner table in <tr><td colspan="2">.

Handled by removal of inner tables with additional styling on elements.

Duplicate style attribute on position table:

<table style="background-color: #302115; width:100%; font-size:11px; style="color: #888; padding:2px 0;"">

Second style= is ignored — the color: #888 never applies.

fixed duplicate style property

valueAsNumber with ??e.target.valueAsNumber returns NaN when empty, not null/undefined, so ?? 100 won't catch it. NaN will propagate to the saved config. Use || 100 or an explicit isNaN check instead.

replaced ?? with || incase of NaN

Hardcoded background colors (#302115, #233b46, #00f800, #252e17) — these will look wrong in Light and Retro themes. Should use CSS variables or at least rgba() with low opacity over the existing background.

removed all # hardcoded colors, replaced with rgba(), modify opacity on selected colors

Should fix

minElev default mismatchSettingsPanel defaults to 5.0 but useSatelliteLayer.js uses config?.satellite?.minElev || 0. A user who hasn't opened settings will see different visibility behavior between the layer and the hook.

minElev consistency default to 5.0

Negative min elevation allowed — The input allows -89 which would mark a satellite as "visible" when below the horizon. Should probably clamp to 0–89.

Restricted minElev to -5 to 89 allowing for marginal below the horizon setting.
There was also a problem in the onChange functionality when the value was zero - which was getting set to 5. Fixed with isNaN().

@MichaelWheeley MichaelWheeley requested a review from accius April 5, 2026 19:15
@MichaelWheeley
Copy link
Copy Markdown
Contributor Author

MichaelWheeley commented Apr 5, 2026

image image

@MichaelWheeley MichaelWheeley marked this pull request as draft April 6, 2026 17:14
@MichaelWheeley MichaelWheeley marked this pull request as ready for review April 6, 2026 18:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[IMPROVEMENT / QUESTION] satellites ? remove altitude and speed ?

2 participants